package com.yunyao.dao.model;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunyao.common.web.util.ConvertUtil;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 审批确认历史记录表
 * </p>
 *
 * @author xingjishuai
 * @since 2024-07-02
 */
@Data
@TableName("bamu_audit_confirm_history")
public class BamuAuditConfirmHistory {

    /**
     * 主键
     */
    private String id;

    /**
     * 业务主键
     */
    private String bizId;

    /**
     * 业务数据时间
     */
    private Date bizDate;

    /**
     * 业务数据价格
     */
    private BigDecimal bizPrice;

    /**
     * 附件
     */
    @TableField("`file`")
    private String file="[]";

    /**
     * 说明
     */
    private String mark;

    /**
     * 审批确认类型无特别说明默认0
     */
    @TableField("`type`")
    private String type;

    /**
     * 业务的状态根据业务决定
     */
    @TableField("`status`")
    private Integer status;

    /**
     * 中文名称
     */
    private String cnName;

    /**
     * 数据删除状态0:未删除,1:删除
     */
    private Integer isDeleted;

    /**
     * 租户ID
     */
    @TableField(value = "tenant_id", fill = FieldFill.INSERT)
    private String tenantId;

    /**
     * 创建时间
     */
    @TableField(value = "created_at", fill = FieldFill.INSERT)
    private Date createdAt;

    /**
     * 创建人
     */
    @TableField(value = "created_by", fill = FieldFill.INSERT)
    private String createdBy;

    /**
     * 创建部门
     */
    @TableField(value = "create_dept", fill = FieldFill.INSERT)
    private String createDept;

    /**
     * 修改时间
     */
    @TableField(value = "updated_at", fill = FieldFill.INSERT_UPDATE)
    private Date updatedAt;

    /**
     * 修改人
     */
    @TableField(value = "updated_by", fill = FieldFill.INSERT_UPDATE)
    private String updatedBy;

    /**
     * 申请时间
     */
    private Date applyDate;

    /**
     * 申请人
     */
    private String applyName;


    public void setFile(String file) {
        if (ConvertUtil.isValidNotEmptyJson(file)){
            this.file = file;
        }
    }
}
